function CharMode(iN) {
	if (iN >= 48 && iN <= 57) // 数字
		return 1;
	if (iN >= 65 && iN <= 90) // 大写字母
		return 2;
	if (iN >= 97 && iN <= 122) // 小写
		return 4;
	else
		return 8; // 特殊字符
}

// bitTotal函数
// 计算出当前密码当中一共有多少种模式
function bitTotal(num) {
	modes = 0;
	for (i = 0; i < 4; i++) {
		if (num & 1)
			modes++;
		num >>>= 1;
	}
	return modes;
}

// checkStrong函数
// 返回密码的强度级别
function checkStrong(sPW) {
	if (sPW.length < 6)
		return 0; // 密码太短
	Modes = 0;
	for (i = 0; i < sPW.length; i++) {
		// 测试每一个字符的类别并统计一共有多少种模式.
		Modes |= CharMode(sPW.charCodeAt(i));
	}
	return bitTotal(Modes);
}
// pwStrength函数
// 当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色
function pwStrength(pwd) {
	if (pwd == null || pwd == '' ) {
		$(".passLevel i").attr("class","i_aq_color_d");
		//$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
	} else if(pwd.length < 6){
		$(".passLevel i").attr("class","i_aq_color_d");
		$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
	}else {
		S_level = checkStrong(pwd);
		switch (S_level) {
			case 0 :
				$(".passLevel i").attr("class","i_aq_color_d");
				$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
				$("#passwordLevel").val(0);
				break;
			case 1 :
				$(".passLevel i").attr("class","i_aq_color_d");
				$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
				$("#passwordLevel").val(1);
				break;
			case 2 :
				$(".passLevel i:eq(2)").attr("class","i_aq_color_d");
				$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
				$(".passLevel i:eq(1)").attr("class","i_aq_color_b");
				$("#passwordLevel").val(2);
				break;
			case 3 :
				$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
				$(".passLevel i:eq(1)").attr("class","i_aq_color_b");
				$(".passLevel i:eq(2)").attr("class","i_aq_color_c");
				$("#passwordLevel").val(3);
				break;
			case 4 :
				$(".passLevel i:eq(0)").attr("class","i_aq_color_a");
				$(".passLevel i:eq(1)").attr("class","i_aq_color_b");
				$(".passLevel i:eq(2)").attr("class","i_aq_color_c");
				$("#passwordLevel").val(4);
				break;
			default :
				$("span[id^='span_']").removeClass("gy").addClass("or");
		}
	}
	return;
}